package _1_初级._2_字符串;

public class _14_最长公共前缀 {



    /**
     * 编写一个函数来查找字符串数组中的最长公共前缀。
     * 如果不存在公共前缀，返回空字符串 ""。
     *
     * 示例 1:
     * 输入: ["flower","flow","flight"]
     * 输出: "fl"
     *
     * 示例 2:
     * 输入: ["dog","racecar","car"]
     * 输出: ""
     * 解释: 输入不存在公共前缀。
     *
     * 说明:
     * 所有输入只包含小写字母 a-z 。
     *
     */
    public static String longestCommonPrefix(String[] strs) {

        String str = strs[0];

        //遍历第二个以后的字符串
        for(int i = 1; i < strs.length; i++){
            //遍历当前字符串的字符
            int j = 0;
            for(; j < strs[i].length() && j < str.length(); j++){
                 if(str.charAt(j) != strs[i].charAt(j)){
                          break;
                 }
            }
            //截取公共前缀
            str = str.substring(0,j);
        }

        return str;
    }

    public static void main(String[] args) {
        String[] strs = new String[]{"flower","flow","flight"};
//        String[] strs1 = new String[]{"abcd","abc","ab"};

        String ssss =longestCommonPrefix(strs);
        System.out.println(ssss);
    }

}
